package com.example.demo.api.ecom;

import com.example.demo.bean.vo.EcomPreAuthSwitchRequest;
import com.github.lianjiatech.retrofit.spring.boot.annotation.RetrofitClient;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.Headers;
import retrofit2.http.POST;

@RetrofitClient(baseUrl = "${ecom.store.base}")
public interface StoreApi {

    /*****************************************************Store*********************************************************/
    /**
     * <p> 配置:  li_ecom_store_url (PropertiesUtil)
     * <p> 缓存:  cache.region.redis.store
     * <p> 过期时间: 60 * 60 * 24
     *
     * @return Stores
     */
    @GET("v3/alc/stores")
    @Headers("apikey: l71e61572864c8427dabefa21de6389c7e")
    Object getStores();

    /**
     * <p> 配置: li_ecom_counry_language_fallback_url (PropertiesUtil)
     * <p> 缓存:  cache.region.redis.fallack
     * <p> 过期时间: 60 * 60 * 24
     *
     * @return 国家列表
     */
    @GET("v3/alc/unit/displaycountries")
    @Headers("apikey: l71e61572864c8427dabefa21de6389c7e")
    Object getDisplayCountries();


    /**
     * <p> 配置: ecom.pre.auth.switch.host (@value)
     * <p> 请求头: apikey
     * <p> 缓存:   key WORLD_PAY_SWITCH_CACHE_KEY  hashKey WORLD_PAY_SWITCH_CACHE_KEY_US_EN
     * <p> 过期时间: 3600 * 8
     *
     * @return unitInfo
     */
    @POST("v3/alc/unitInfo")
    @Headers({"Content-Type: application/json;charset=UTF-8",
              "apikey: l71e61572864c8427dabefa21de6389c7e"})
    Object getUnitInfo(@Body EcomPreAuthSwitchRequest ecomPreAuthSwitchRequest);

}
